/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package ssp.topology;

/**
 * トポロジにおけるノードを表すインタフェース
 * @author yamazaki
 */
public interface Node {
    
    /**
     * 指定のノードを隣接に加える
     * @param neighbor 隣接ノード
     */
    public abstract void addNeighbor(Node neighbor);
    
    /**
     * 指定のノードが隣接か否かを返す
     * @param other ノード
     * @return 隣接ならtrue
     */
    public abstract boolean isNeighbor(Node other);
    
    /**
     * 指定のノードを隣接から削除する
     * @param neighbor 削除ノード
     */
    public abstract void removeNeighbor(Node neighbor);
    
}
